package com.xcc.web;

import org.apache.shiro.authz.UnauthorizedException;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseStatus;
import org.springframework.web.context.request.NativeWebRequest;
import org.springframework.web.servlet.ModelAndView;

/**
 * @create: 2019-07-09 18:20
 * @author: Aner
 * @description:
 **/
@ControllerAdvice
public class DefaultExceptionHandler {
    /**
    * @Author: Aner
    * @Description: 没有权限 异常
     * 后续根据不同的需求定制即可
    */
    @ExceptionHandler({UnauthorizedException.class})
    @ResponseStatus(HttpStatus.UNAUTHORIZED)
    public ModelAndView processUnauthenticatedException(NativeWebRequest request, UnauthorizedException e){
        ModelAndView mv =new ModelAndView();
        mv.addObject("exception",e);
        mv.setViewName("unauthorized");
        return mv;
    }
}
